iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 1
5

這一陣子以來,網頁開發最大的新聞,就是 Laravel 6.0 要發佈了!
laravel 6.0

最近一陣子連官網都更新啦!

興奮到模糊

什麼?你從來沒有用過 Laravel 框架?覺得 Laravel 很難學?

震驚

那還不趕快追蹤這一系列文章!教你如何從零開始,學會怎麼用 Laravel 6.0 開發網站!


Laravel 是一個使用 PHP 程式語言的後端框架,要運作 Laravel 之前,要先確定環境安裝好 PHP

電腦還沒有 PHP 的同學請參考官網的教學安裝

安裝成功之後,執行 php --version,應該可以看到類似這樣的提示訊息:

$ php --version
PHP 7.3.6 (cli) (built: May 31 2019 23:38:25) ( NTS )

如果已經有 PHP 環境的同學們,請各位先下載 composer

不會用 composer 的同學們,請參考composer 官網的教學

或者可以參考聖佑大大精彩的演講

安裝好之後,執行

$ composer global require laravel/installer

Changed current directory to /Users/reccachao/.composer
Using version ^2.1 for laravel/installer
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Nothing to install or update
Generating autoload files

好了!看起來成功安裝了!我們來嘗試看看取得現在 laravel 的版本:

如果你看到的是類似

$ laravel --version
bash: laravel: command not found

這樣的錯誤訊息,那代表你的 cmd 不認得 laravel 這個命令。最有可能的原因,是因為他沒有嘗試去找 composer 下載的檔案來運行。

你需要修改你的 $PATH 路徑,讓指令列可以成功找到 Laravel installer

如果你是用 macOS 或者 GNU / Linux 系統,你的 Laravel installer 應該位在

$HOME/.composer/vendor/bin

如果你是用 Windows 系統,請去買一台 Mac

開玩笑的,你的 Laravel installer 應該位在

%USERPROFILE%\AppData\Roaming\Composer\vendor\bin

如果修改完成之後,或者你原本看到的就是類似這樣的訊息

$ laravel --version
Laravel Installer 2.1.0

恭喜你!你已經安裝好 Laravel installer 了。我們現在來建立一個新專案

$ laravel new Laravel60Demo
Crafting application...
Loading composer repositories with package information
......
Package manifest generated successfully.
Application ready! Build something amazing.

成功啦!我們趕緊進去看看

$ cd Laravel60Demo
$ ls
app            bootstrap      composer.lock  database       phpunit.xml    resources      server.php     tests          webpack.mix.js
artisan        composer.json  config         package.json   public         routes         storage        vendor         yarn.lock

恭喜你!你安裝了人生中第一個 Laravel 專案了!歡迎進入 Laravel 的世界!

今天就先到這邊吧!明天我們來看看怎麼繼續 Laravel 的開發!


下一篇
[Day 2] 版本怎麼不是 6.0?聊聊版本編號與 Laravel 架構
系列文
Laravel 6.0 初體驗!怎麼用最新的 laravel 架網站!30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
0
阿瑜
iT邦研究生 3 級 ‧ 2019-09-09 00:05:33


嘗試過的辦法

nano ~/.bash_profile
# add 
export PATH=~/.composer/vendor/bin:$PATH

但 還是

想請問 這樣怎麼辦?

看更多先前的回應...收起先前的回應...
ReccaChao iT邦研究生 5 級 ‧ 2019-09-09 00:22:09 檢舉

你好~
.bash_profile 加入指令之後,可能還需要執行

$ source ~/.bash_profile

才會生效喔

另外執行該指令之前,請再三確認你的 PATH 引用方式是否正確,不然可能導致整個 PATH 被弄亂喔!

個人建議使用

export PATH="$PATH:$HOME/.composer/vendor/bin"

多數看到的教學都是這樣引用,應該沒有問題。


參考資料

阿瑜 iT邦研究生 3 級 ‧ 2019-09-09 00:26:38 檢舉

好 ,我試試。
/images/emoticon/emoticon41.gif

阿瑜 iT邦研究生 3 級 ‧ 2019-09-09 00:34:01 檢舉

試過了,但還是不行 QQ

加入 export ...

執行 source ...

laravel 還是找不到指令

ReccaChao iT邦研究生 5 級 ‧ 2019-09-09 00:57:44 檢舉

打錯字囉

vendor 不是 vender


另外一個可以協助偵測錯誤的方式,是用 $ echo $PATH 來看看現在的 $PATH 到底長怎樣

安裝環境常常會有很多問題,辛苦你了,加油!

阿瑜 iT邦研究生 3 級 ‧ 2019-09-09 01:05:23 檢舉

謝謝你的即時救援 m(_ _)m

阿瑜 iT邦研究生 3 級 ‧ 2019-09-09 01:14:34 檢舉


把 vender 改成 vendor了,但還是行不通。
這次有把路徑 echo 出來了

阿瑜 iT邦研究生 3 級 ‧ 2019-09-09 14:01:08 檢舉

Ok 啦 ~~~ 謝謝你XD

0
vivian880055
iT邦新手 5 級 ‧ 2019-09-28 23:28:42

$ cd Laravel60Demo
$ ls
想請問最後這個要怎樣執行才行
我用了都是這樣
https://ithelp.ithome.com.tw/upload/images/20190928/20120427TlVux42sqO.jpg

看更多先前的回應...收起先前的回應...
ReccaChao iT邦研究生 5 級 ‧ 2019-09-28 23:47:11 檢舉

這代表專案並沒有建立成功,Laravel60Demo 這個資料夾沒有出現。

重新操作一次看看哪邊出錯了吧

想問一下,這樣是不是已經建立好專案的意思呢?

https://ithelp.ithome.com.tw/upload/images/20190929/20120427m6ZPnwE3Nh.jpg

ReccaChao iT邦研究生 5 級 ‧ 2019-09-29 21:00:55 檢舉

對,你建立好的新專案名稱是 Laravel60

不過你嘗試存取的是 Laravel60Demo,後面這個資料夾是不存在的,所以你會無法存取。

我又重新試了一次
到這都是對的,可是執行$ cd Laravel60Demo
請問該怎麼解決呢?

https://ithelp.ithome.com.tw/upload/images/20190929/2012042734qUIUw4Mx.jpg

ReccaChao iT邦研究生 5 級 ‧ 2019-09-29 23:23:24 檢舉

找到原因啦!因為我的文章寫錯字了
在建立時我寫的是 Laravel60 存取時我寫的是 Laravel60Demo

馬上改正,感謝您的提問,讓我發現問題XD

真的非常謝謝你!
我終於用成功了

0
ckp6250
iT邦好手 1 級 ‧ 2019-11-26 16:39:04

新生報到。

1
eric19740521
iT邦新手 1 級 ‧ 2020-08-26 04:00:31

WINDOWS這樣下達,可以指定LARAVEL版本


composer create-project --prefer-dist laravel/laravel demo3 "6.0.*"

0
BeEvil_Y
iT邦新手 4 級 ‧ 2021-10-05 15:57:43

為什麼你們IT邦鐵人賽都沒提到一件事情…
如果我有很多張資料表,要做複合查詢,要怎玩?

你們的示例永遠就一張資料表玩到底 (HTTP CURL )
怎麼調用route、view、controller
了不起講個session、author、hash
後面再補個bootstrap、vuejs、duckfile結尾。

你要知道喔,對新手來講,你們一個Model用一張Table。
沒學過程式設計、資料庫的人,會以為「就是這樣綁定」的。
很不幸的,實際情況我可以一個PhP調用 100張table,只要我願意。

講到這就會有很多人,看不懂我想表達什麼。

舉例:
水果(種類、價格、季節)
銷售員(姓名、薪資、電子信箱)
顧客(姓名、電話、職業、性別)
流水帳(帳單、金額、品項)

我想請問一下,有誰會白痴到為這4個資料表都各做一次Model?
做完這4個Model之後,你還要去遷Route、Controller。
再做新增、刪除、修改?

做完後,為了配合老闆,你要怎麼弄報表?
老闆想從手機看,這個月的中年婦女買了哪些水果。

請問

你要怎麼做這個頁面?

把上面4個表全部用all()調出來放在array,再用javascript去切割控制嗎?
我現在就看到不少網站是這樣做呢?
搞什麼東西啊?

這個東西,我用一下資料庫語法 select from inner join就可以輕鬆解決了。

連你們萬年唾棄的Asp.net都做的到,還是圖形化界面。
箭頭拉一拉弄個關聯表就好了,還有關聯精靈一步一步帶著你做。
完全零語法。
傳送門:https://www.youtube.com/watch?v=suQ81mvfyhA

直接在Microsoft access 內建立「查詢表」,免在Html寫語法調用。
直接連進資料庫取出「查詢表」,不用在那邊 where for desc only like????
傳送門:https://youtu.be/JfTQlZ6VX9A

回到正題:
所以為什麼整個IT邦,在 Laravel 裡沒有半個人提到複合查詢。

也沒有人講解,如果資料表不綁Model的情況下,可以Use(宣告) db 進來調用?

很扯的東西你知道嗎?新手為了調用資料表,全部都Use(宣告)Model裡面的Controller。
再利用 xxxxx::all();取資料。

像上面的例子,就會變這樣。
水果::all();
銷售員::all();
顧客::all();
流水帳::all();

再白痴一點就寫成這樣。
$for=[
水果::all(),
銷售員::all(),
顧客::all(),
流水帳::all(),
];

$for=[] 等於 $for=array()

你們這樣是在殘害幼苗喔,我提醒一下你們。
你們是主打Laravel是零程式、資料庫基礎可學的東西。

結果你們這些前鋒引導者,都沒注意到後浪再做什麼。

補充

你們一定要有人出來導正視聽。
不然你們就等著看全台灣跟Laravel有關的大中小專案,有超過30%都是像我說的。
全部用all()調出來放在array,再用javascript去切割控制,這種畸型玩法。

你們知道這種畸型玩法,在現實生活中有多離譜嗎?

就好像你去一間餐聽,正常是你照著「菜單」去點菜。
正常:「主食一份、配菜三份、甜點一份」。

你這個玩法就是
畸型:「全部叫廚師煮出來,你每個吃一口,再決定要吃什麼,再付你決定吃的錢」。

資料庫小是一回事,資料庫大又是另一回事。
2017~2021全台灣網路資料流每天的數據約200T~300T。
1T=1000G

為了解決這可怕的資料流,現在還有在推「邊際運算」(不懂的自已去GOOGLE)。

我希望未來如果增長到500~1000T時,兇手群最好不含Laravel。
放著不管10年後再來處理這件事情時,我看這些人有誰要理你。

我要留言

立即登入留言